[INFO] cloning repository https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmake-a-demo-tool-in-rust%2Ffish-in-a-jit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmake-a-demo-tool-in-rust%2Ffish-in-a-jit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5b402fca6a28123e0506286903b0c874ba190052
[INFO] fixing make-a-demo-tool-in-rust/fish-in-a-jit against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmake-a-demo-tool-in-rust%2Ffish-in-a-jit" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit
[INFO] finished tweaking git repo https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit
[INFO] tweaked toml for git repo https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/make-a-demo-tool-in-rust/fish-in-a-jit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `fish_in_a_jit` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af
[INFO] running `Command { std: "docker" "start" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `fish_in_a_jit` (manifest) generated 1 warning
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]     Checking libc v0.2.21
[INFO] [stderr]     Checking winapi v0.2.8
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking utf8-ranges v0.1.3
[INFO] [stderr]     Checking regex-syntax v0.3.9
[INFO] [stderr]     Checking linked-hash-map v0.3.0
[INFO] [stderr]     Checking serde v0.9.12
[INFO] [stderr]     Checking log v0.3.7
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]    Compiling syn v0.11.9
[INFO] [stderr]     Checking yaml-rust v0.3.5
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking thread-id v2.0.0
[INFO] [stderr]     Checking time v0.1.36
[INFO] [stderr]     Checking thread_local v0.2.7
[INFO] [stderr]     Checking aho-corasick v0.5.3
[INFO] [stderr]     Checking regex v0.1.80
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]    Compiling serde_derive v0.9.12
[INFO] [stderr]     Checking env_logger v0.3.5
[INFO] [stderr]     Checking serde_yaml v0.6.2
[INFO] [stderr]     Checking fish_in_a_jit v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/jit/ops.rs (1 fix)
[INFO] [stderr]        Fixed src/bytecode.rs (4 fixes)
[INFO] [stderr]        Fixed src/jit/mod.rs (2 fixes)
[INFO] [stderr]        Fixed src/dmo.rs (4 fixes)
[INFO] [stdout] warning: type annotations needed
[INFO] [stdout]    --> src/jit/mod.rs:200:68
[INFO] [stdout]     |
[INFO] [stdout] 200 |             clear_cache(self.addr as *mut _, (self.addr as *mut _).offset(self.size as _));
[INFO] [stdout]     |                                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/tyvar-behind-raw-pointer.html>
[INFO] [stdout]     = note: `--force-warn tyvar-behind-raw-pointer` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type annotations needed
[INFO] [stdout]    --> src/jit/mod.rs:200:68
[INFO] [stdout]     |
[INFO] [stdout] 200 |             clear_cache(self.addr as *mut _, (self.addr as *mut _).offset(self.size as _));
[INFO] [stdout]     |                                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/tyvar-behind-raw-pointer.html>
[INFO] [stdout]     = note: `--force-warn tyvar-behind-raw-pointer` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating src/bin/draw_and_print.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/bin/draw_and_print.rs (2 fixes)
[INFO] [stderr]    Migrating examples/fish-standalone.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed examples/fish-standalone.rs (2 fixes)
[INFO] [stderr]    Migrating examples/fish-jit.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed examples/fish-jit.rs (3 fixes)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.48s
[INFO] [stderr] crater-edition-check: fish_in_a_jit v0.1.0 (/opt/rustwide/workdir) updating edition from 2015 to 2018
[INFO] [stderr]     Checking fish_in_a_jit v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the feature `link_llvm_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(link_llvm_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/dmo.rs:146:24
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let dmo: Dmo = r#try!(serde_yaml::from_str(text));
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/dmo.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut f: File = r#try!(File::create(&path));
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/jit/mod.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | extern {
[INFO] [stdout]    | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/jit/mod.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |             let fn_ptr: extern fn(&mut Context);
[INFO] [stdout]    |                         ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `abi_sysv64` has been stable since 1.24.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(abi_sysv64)]
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(try_from)]
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/jit/mod.rs:117:56
[INFO] [stdout]     |
[INFO] [stdout] 117 |             let mut raw_addr: *mut libc::c_void = mem::uninitialized();
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/utils.rs:7:61
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn file_to_string(path: &PathBuf) -> Result<String, Box<Error>> {
[INFO] [stdout]   |                                                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn file_to_string(path: &PathBuf) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]   |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/dmo.rs:145:60
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn new_from_yml_str(text: &str) -> Result<Dmo, Box<Error>> {
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn new_from_yml_str(text: &str) -> Result<Dmo, Box<dyn Error>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/dmo.rs:150:67
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn write_to_blob(&self, path: &PathBuf) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn write_to_blob(&self, path: &PathBuf) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/jit/mod.rs:200:46
[INFO] [stdout]     |
[INFO] [stdout] 200 |             clear_cache(self.addr as *mut _, (self.addr as *mut _).offset(self.size as _));
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^ ------ cannot call a method on a raw pointer with an unknown pointee type
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `link_llvm_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(link_llvm_intrinsics)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/dmo.rs:146:24
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let dmo: Dmo = r#try!(serde_yaml::from_str(text));
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/dmo.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut f: File = r#try!(File::create(&path));
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/jit/mod.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | extern {
[INFO] [stdout]    | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]   --> src/jit/mod.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |             let fn_ptr: extern fn(&mut Context);
[INFO] [stdout]    |                         ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bytecode.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 | pub fn push_u32(mut v: &mut Vec<u8>, n: u32) {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bytecode.rs:235:17
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub fn push_f32(mut v: &mut Vec<u8>, n: f32) {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `abi_sysv64` has been stable since 1.24.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(abi_sysv64)]
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(try_from)]
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/jit/mod.rs:117:56
[INFO] [stdout]     |
[INFO] [stdout] 117 |             let mut raw_addr: *mut libc::c_void = mem::uninitialized();
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/utils.rs:7:61
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn file_to_string(path: &PathBuf) -> Result<String, Box<Error>> {
[INFO] [stdout]   |                                                             ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn file_to_string(path: &PathBuf) -> Result<String, Box<dyn Error>> {
[INFO] [stdout]   |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/dmo.rs:145:60
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn new_from_yml_str(text: &str) -> Result<Dmo, Box<Error>> {
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn new_from_yml_str(text: &str) -> Result<Dmo, Box<dyn Error>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `fish_in_a_jit` (lib) due to 1 previous error; 13 warnings emitted
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/dmo.rs:150:67
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn write_to_blob(&self, path: &PathBuf) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub fn write_to_blob(&self, path: &PathBuf) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/jit/mod.rs:200:46
[INFO] [stdout]     |
[INFO] [stdout] 200 |             clear_cache(self.addr as *mut _, (self.addr as *mut _).offset(self.size as _));
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^ ------ cannot call a method on a raw pointer with an unknown pointee type
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bytecode.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 | pub fn push_u32(mut v: &mut Vec<u8>, n: u32) {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bytecode.rs:235:17
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub fn push_f32(mut v: &mut Vec<u8>, n: f32) {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `fish_in_a_jit` (lib test) due to 1 previous error; 13 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af", kill_on_drop: false }`
[INFO] [stdout] 6dcbe26b258212cc795d97f8a79302c073bc2cd7c59800630bbb35326d28e5af
